package com.icinfo.cloud.provider.punish.strategy.document;

import com.icinfo.cloud.provider.punish.document.annotations.DocumentParamConvert;
import com.icinfo.cloud.provider.punish.document.dto.PrintDocumentBuildDto;
import com.icinfo.cloud.provider.punish.print.vo.PrintDocumentVo;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;

/**
 * 抽样取证通知书文书参数
 *
 * @author Junfeng.Chen
 * @date 2024/1/15 8:49
 **/
@Data
@Slf4j
public class CyqztzsDocumentParam implements BaseDocumentParam {

    /**
     * 单位名称
     */
    @DocumentParamConvert(narrow = "orgStandardName", standard = "orgStandardName")
    private String orgStandardName;

    /**
     * 文号
     */
    @DocumentParamConvert(narrow = "documentNumber", standard = "documentNumber")
    private String documentNumber;

    /**
     * 当事人
     */
    @DocumentParamConvert(narrow = "partyName", standard = "partyName")
    private String partyName;

    /**
     * 案发地址，宽幅不包含该字段的直接映射
     */
    @DocumentParamConvert(narrow = "addressWithLatAndLgt", standard = "addressWithLatAndLgt")
    private String addressWithLatAndLgt;

    /**
     * 涉嫌行为
     */
    @DocumentParamConvert(narrow = "CYQZTZS_SXXW", standard = "CYQZTZS_SXXW")
    private String sxxw;

    /**
     * 违反规定
     */
    @DocumentParamConvert(narrow = "wf_wfc", standard = "wf_wfc")
    private String wfgd;

    /**
     * 当事人名称
     */
    @DocumentParamConvert(narrow = "partyName1", standard = "partyName1")
    private String partyName1;

    /**
     * 抽样物品列表
     */
    @DocumentParamConvert(narrow = "goodsList", standard = "goodsList")
    private String goodsList;

    /**
     * 当事人签名
     */
    @DocumentParamConvert(narrow = "signFingerprintPic", standard = "signFingerprintPic")
    private String signFingerprintPic;

    /**
     * 主办执法人员
     */
    @DocumentParamConvert(narrow = "mainHandleSignPic", standard = "mainHandleSignPic")
    private String mainHandleSignPic;

    /**
     * 协办执法人员
     */
    @DocumentParamConvert(narrow = "assistHandleSignPic", standard = "assistHandleSignPic")
    private String assistHandleSignPic;

    /**
     * 盖章单位
     */
    @DocumentParamConvert(narrow = "orgStandardNameSeal", standard = "orgStandardNameSeal")
    private String orgStandardNameSeal;

    /**
     * 盖章时间
     */
    @DocumentParamConvert(narrow = "sealDate", standard = "sealDate")
    private String sealDate;

    /**
     * 不签字理由
     */
    @DocumentParamConvert(narrow = "notSignReason", standard = "notSignReason")
    private String notSignReason;

    @Override
    public PrintDocumentVo assemblyPrintContent(PrintDocumentBuildDto dto) {
        //该文书较复杂，不能使用json， 图片打印暂不处理，后期有需求后对接
        return new PrintDocumentVo(null, null);
    }
}
